const express = require('express');
const mysql = require('mysql');
const tools = require('../../lib/tools.js');

/**
 * login管理路由
 */
module.exports = function() {
    let router = express.Router();

    // 定义查询数据库池 
    let db = mysql.createPool({
        host:'localhost',
        user:'root',
        password:'admin',
        database:'blogapp'
    })

    // 登陆界面渲染
    router.get('/',(req,res) => {     
        res.render('./admin/login.ejs');
    })
    // 响应登陆post数据
    router.post('/',(req,res) => {
         const username = req.body.username;
         const password = tools.MD5(req.body.password+tools.MD5_ADMIN);

            // '${username}' 需要用引号包起来
         db.query(`SELECT * FROM admin_table WHERE username = '${username}' `,(err,data) => {
             if (err) {
                 console.log(err);
                 // 查询出错
                 res.status(500).send('数据库错误。').end();
             } else {
                 if (data.length == 0) {
                     // 查询结果为 0 。即账号错误
                     res.status(400).send('账号错误。').end();
                 } else {
                     
                     if (password != data[0].password) {
                         // 查询成功，但密码错误
                         res.status(400).send('密码错误。').end();
                     } else {
                         // 成功
                         req.session['admin_id'] = data[0].ID;
                         res.redirect('/admin');
                     }
                 }
             }
         })
    });
    
    return router;
}